header{
	padding: 14px 8px;
	background: @red;
	position: relative;
	top: 0;
	width: 100%;
}

#logo{
	width: auto;
	height: 20px;
}

#innerHeader{
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	max-width: @contentWidth;
	margin: 0 auto;
}

nav{
	width: 28px;
	height: 20px;

	&:hover .nav{
		will-change: opacity;
	}
}

#navIcon{
	width: 28px;
	height: 20px;
	display: flex;
	flex-flow: row wrap;
	align-content: space-between;
	cursor: pointer;

	& > div{
		content: "";
		width: 100%;
		height: .2px;
		background: @white;
	}
}

.nav{
	width: 100%;
	position: absolute;
	left: 0;
	top: 48px;
	display: flex;
	flex-flow: column nowrap;
	height: 0;
	overflow-y: hidden;
	transition: .25s opacity ease-out;
	opacity: 0;
}

.show{
	height: auto;
	opacity: 1;
}

.navItem{
	padding: 8px;
	background: @green;
	color: @white;
	text-decoration: none;
	font-size: 16px;
	text-transform: uppercase;
	font-weight: 700;
}

.destinations{
	padding: 16px 0 16px 8px;
	margin: 0 auto 1rem;
	border-bottom: 1px solid @grey;
	overflow-x: auto;
	font-size: 0;
	white-space: nowrap;
	max-width: @contentWidth;
	width: 100%;
}

.destination{
	padding: 0 16px 0 0;
	font-size: 12px;
	display: inline-block;

	a{
		text-decoration: none;
	}
}

.recipeName{
	font-size: 28px;
	color: @darkBlue;
	margin: 0 0 8px;
	font-weight: 700;
}

#content{
	padding: 0 8px;
}

#masthead,
.ad{
	margin: 0 0 16px;
	width: 100%;
	display: block;
}

.attributes{
	display: flex;
	justify-content: space-between;
}

.attribute{
	width: 32%;
	background: @green;
	text-align: center;
	color: @white;
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	padding: 8px 0;
	font-size: 12px;
	margin: 0 0 16px;

	span{
		font-size: 16px;
		width: 100%;
		font-weight: 700;
	}
}

.description{
	padding: 0 0 16px;
	border-bottom: 1px solid @grey;
}

.description,
.ingredientList{
	color: @darkBlue;
	font-size: 14px;
	margin: 0 0 16px;
}

.actions{
	display: flex;
	justify-content: space-around;
	margin: 0 0 16px;
}

.actions:hover .action{
	will-change: background-color;
}

.action{
	width: 48px;
	height: 48px;

	a{
		display: block;
		width: 48px;
		height: 48px;
	}
}

.pinterest{
	background-image: url("../img/icon-images/icon_pinterest.svg");
}

.facebook{
	background-image: url("../img/icon-images/icon_facebook.svg");
}

.twitter{
	background-image: url("../img/icon-images/icon_twitter.svg");
}

.googlePlus{
	background-image: url("../img/icon-images/icon_google-plus.svg");
}

.ingredientList{
	li{
		margin: 0 0 8px;
	}
}

.sectionHeader{
	font-size: 20px;
	color: @darkBlue;
	font-weight: 700;
	margin: 0 0 16px;
}

.ingredientSteps{
	margin: 0 0 16px;
	border-bottom: 1px solid @grey;
}

.stepList{
	color: @darkBlue;
	font-size: 14px;
}

.step{
	margin: 0 0 16px;

	h3{
		font-size: 16px;
		font-weight: 700;
		margin: 0 0 8px;
	}

	p{
		border-left: 2px solid @grey;
		padding: 0 0 0 8px;
	}
}

.contentList{
	flex-flow: row wrap;
	border-bottom: 1px solid @grey;

	a{
		display: block;
		text-decoration: none;
	}
}

.contentList,
.collectionItem{
	display: flex;
	justify-content: space-between;
	margin: 0 0 16px;
}

.contentItem{
	margin: 0 0 16px;
	width: 48.5%;
}

.contentImage{
	display: block;
	margin: 0 0 4px;
}

.contentDescription{
	font-size: 14px;
}

.ad{
	height: auto;
}

.collectionItem{
	align-items: flex-start;
	width: 100%;
}

.collectionImage{
	width: 40%;
	height: auto;
}

.collectionCopy{
	width: 57.5%;
	font-size: 14px;
	color: @darkBlue;

	b{
		display: block;
		font-size: 14px;
		margin: 0 0 4px;
	}

	a{
		display: block;
		margin: 4px 0 0;
	}
}

.expandable{
	border: 1px solid @grey;
	padding: 8px;
	position: relative;
	margin: 0 0 16px 0;

	.sectionHeader{
		margin: 0;
		cursor: pointer;
	}

	.content{
		display: none;
		padding: 8px 0 0;
	}

	&::before{
		content: "";
		display: block;
		width: 0;
		height: 0;
		border-left: 8px solid transparent;
		border-right: 8px solid transparent;
		border-top: 12px solid @red;
		position: absolute;
		top: 12px;
		right: 12px;
	}

	&.expanded{
		&::before{
			border-bottom: 12px solid @red;
			border-top: initial;
		}

		.content{
			display: block;
		}
	}
}

.nutrition{
	font-size: 14px;
	color: @darkBlue;
}

.nutritionItem{
	margin: 0 0 8px;

	&:last-child{
		margin: 0;
	}

	b{
		margin: 0 0 8px;
		display: block;
	}

	p{
		padding: 0 0 0 8px;
		border-left: 2px solid @grey;
	}
}

#reviews{
	padding: 16px 0;
	margin: 0 0 16px;
	border-top: 1px solid @grey;
	border-bottom: 1px solid @grey;
}

.review{
	font-size: 14px;
	color: @darkBlue;
	padding: 0 0 16px;
	margin: 0 0 16px;
	border-bottom: 1px solid @nearWhite;

	&:last-child{
		padding: 0;
		margin: 0;
		border: 0;
	}
}

.reviewTitle{
	font-size: 16px;
	margin: 0 0 4px;
	font-weight: 700;
}

.author{
	font-size: .12px;
	margin: 0 0 8px;
}

.rating{
	margin: 0 0 8px;
	display: flex;
	align-items: center;
	font-weight: 700;
}

.star{
	width: 16px;
	height: 16px;
	background-image: url("../img/icon-images/icon_star-off.svg");
	margin: 0 0 0 2px;

	&.on{
		background-image: url("../img/icon-images/icon_star-on.svg");
	}
}

.featuredRecipe{
	.description{
		border-bottom: 0;
	}

	img{
		display: block;
		margin: 0 0 16px;
		width: 100%;
	}

	a{
		display: block;
		margin: 8px 0 0;
	}
}

footer{
	padding: 8px;
	width: 100%;
	background-color: @red;
}

.footerText{
	font-size: 12px;
	color: @white;
	text-align: center;
}